/**
 * 
 *  =========================================================================================================
 * 
 *    小程序数据接口封装 文件名request.js 
 *    使用方式：var r = require('./xxx/xxx/request.js');
 *    
 *    封装方法：
 *    toPost: 
 *        urlPath  接口请求路径    data     明文接口参数    other    其他非加密参数数据
 *        success  成功回调函数
 *        fail     失败回调函数
 *    toGet:
 *        urlPath  接口请求路径
 *        success  成功回调函数
 *        fail     失败回调函数
 *    
 *    调用实例：
 *        var param = {
            code: res.code,
            encryptedData: wx.getStorageSync('encryptedData'),
            iv: wx.getStorageSync('iv')
          }
          r.toPost('/api/login',
            JSON.stringify(param),
            { uuid: wx.getStorageSync('uuid')},
            (res) => {
            成功回调后处理的业务逻辑
          })
 * 
 * 
 *    文件更新时间：2018-08-08 
 * 
 *    开发人员： 沈富贵
 * 
 * ===========================================================================================================
 * 
 * 
 *    文件更新时间：2018-08-28
 *
 *    开发人员： 沈富贵
 *
 * ===========================================================================================================
 */

// 文件依赖数据 dataUrl
var a = {
  globalData: {
    dataUrl: 'https://market.jackgroup.cn/index.php'
  },
  config: {
    LOG_SHOW: false // 关闭文件日志打印
  }
}

function toPost(urlPath, param , success, fail) {
  var that = this

  wx.request({
    url: a.globalData.dataUrl + urlPath,
    data: param,
    method: 'POST',
    dataType: 'json',
    success: function (res) {
      if (res.statusCode == 200) {
        success(res.data)
      } else {
        fail()
      }
    },
    fail: function (res) {
      fail() // 失败回调
    },
    complete: function (res) {},
  })
}

// 对Get接口做简单封装
function toGet(urlPath, success, fail) {
  wx.request({
    url: a.globalData.dataUrl + urlPath,
    data: '',
    method: 'GET',
    dataType: 'json',
    success: function (res) {
      if (res.statusCode == 200) {
        success(res.data)
      } else {
        fail()
      }
    },
    fail: function (res) {
      fail()
    },
    complete: function (res) { },
  })
}

module.exports = {
  toPost: toPost,
  toGet: toGet,
}